SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO
CREATE PROCEDURE [dbo].[SP_TTPROC_INTE_U93]  
/*---------------------------------------------------------*/                                    
/*---Empresa              : OFISIS S.A.                  --*/                                    
/*---Cliente              : OFISIS                     --*/                                    
/*---Sistema              : Tesoreria                    --*/                                    
/*---M©dulo               : Empresa                      --*/                                    
/*---Programa             : Cancelacion de Documentos    --*/                                    
/*---Script               : ttproc_i.sql                 --*/                                    
/*---Nombre SP            : SP_TTPROC_INTE_I93       --*/                                    
/*---Desarrollado por     : Andres Soria          --*/                                    
/*---Fecha Creaci©n       : 09/11/2011                   --*/                                    
/*---Base Datos           : Microsoft Sql Server         --*/                                    
/*---Versi©n              : 2005                         --*/                                    
/*---Invoca a SP          :                              --*/                                    
/*---------------------------------------------------------*/                                    
/*---------------------------------------------------------*/                                  
/*---Modificado 1 por     :         --*/                                  
/*---Fecha Modificaci©n   :                     --*/                                   
/*---Detalle Modificaci©n :         --*/                                  
/*---              --*/                                  
/*---------------------------------------------------------*/                                             
/*---Comentarios                                         --*/                                    
/*---                                                    --*/                                    
/*---                                                    --*/                                    
/*---------------------------------------------------------*/                                    
/*---------------------------------------------------------*/                                    
/*---Drop Proc SP_TTPROC_INTE_I93                        --*/                                     
/*---Grant Execute on SP_TTPROC_INTE_I93 to public       --*/                                     
/*---                      
  Execute SP_TTPROC_INTE_I93 '01', 'OFISIS', 'CJ000001', '', '001', 2011, 10, '2011-04-01', '00600142', 'S'       
    
 EXEC SP_TTPROC_INTE_U92 '01', 'OFISIS', '001', '', '', 2011, 5, '2011-05-01', '00600003','S'    
                             
 --*/                                    
/*---------------------------------------------------------*/                         
@ISCO_EMPR    TD_VC_002 ,                        
@ISCO_USUA_MODI  TD_VC_008,                                 
@ISPA_0001   TD_VC_020 , /* Codigos de prov,bnco,caja,etc.. */                                    
@ISPA_0002   TD_VC_020 , /* Numero cnta(Caso Banco u otros)  */                                    
@ISPA_0003   TD_VC_020 , /* Numero Comprobantes */                                    
@INPA_ANNO   INTEGER ,/* Parametro AÏo  */                                    
@INPA_MESE   INTEGER ,/* Parametro Mes  */                                    
@IDPA_FECH   TD_DT_001 , /* Parametro Fecha  */                                    
@ISNU_ASTO   TD_VC_020,                                    
@ISST_INTE   TD_VC_001                         
                        
as                        
BEGIN                        
                        
DECLARE                        
@VSCO_MONE_DEFA VARCHAR(3),                        
@VSCO_MONE_EXTR VARCHAR(3),                        
@VSCO_OPER_ACRE VARCHAR(3),                        
@VSCO_OPRC_CNTB VARCHAR(3),                        
@VSNU_AMAR VARCHAR(10),                        
@VSCO_MONE VARCHAR(3),                 
@VSCO_TIPO_OPER VARCHAR(3),        
@VSTI_CAMB VARCHAR(3),          
@VSTI_ORIG VARCHAR(1),          
@VSSI_MVTO_CNTB VARCHAR (3) ,                    
@VSCO_PROV   VARCHAR (20),                    
@VSTI_AUXI  VARCHAR (1),                    
@VSNO_AUXI  VARCHAR (20)                    
                        
--CREANDO LA TEMPORAL                        
CREATE TABLE #TXMVTO_CNTB(                        
 CO_EMPR VARCHAR(2) NOT NULL,                        
 NU_CNTB_EMPR INT NOT NULL,                        
 CO_UNID_CNTB VARCHAR(3) NOT NULL,                        
 CO_OPRC_CNTB VARCHAR(3) NOT NULL,                        
 NU_ANNO INT NOT NULL,                        
 NU_MESE INT NOT NULL,                        
 NU_ASTO VARCHAR(10) NOT NULL,                        
 NU_SECU INT  NULL,                        
 FE_ASTO_CNTB DATETIME NOT NULL,                        
 CO_CNTA_EMPR VARCHAR(20) NULL,                        
 TI_AUXI_EMPR VARCHAR(1) NULL,                        
 CO_AUXI_EMPR VARCHAR(20) NULL,                        
 TI_DOCU VARCHAR(3) NULL,                        
 NU_DOCU VARCHAR(50) NULL,                        
 FE_DOCU DATETIME NULL,                        
 FE_DOCU_VENC DATETIME NULL,                        
 TI_CAMB VARCHAR(3) NOT NULL,                        
 CO_MONE VARCHAR(3) NOT NULL,                        
 FA_CAMB NUMERIC (15,6) NOT NULL DEFAULT ((1000)),                        
 FA_CAMB_DIAR NUMERIC (15,6) NOT NULL,                        
 TI_OPER VARCHAR(3) NOT NULL,                        
 IM_MVTO_ORIG NUMERIC (16,4) NOT NULL DEFAULT ((0)),                        
 IM_MVTO_CNTB NUMERIC (16,4) NOT NULL DEFAULT ((0)),                        
 DE_GLOS VARCHAR(100) NOT NULL,                        
 SI_MVTO_CNTB VARCHAR(3) NOT NULL,                        
 ST_IMPR_CHEQ VARCHAR(1) NOT NULL DEFAULT ('N'),                        
 ST_GEST VARCHAR(1) NOT NULL DEFAULT ('N'),                        
 ST_REDO VARCHAR(1) NOT NULL DEFAULT ('N'),                        
 CO_TIPO_OPER VARCHAR(3) NULL,                        
 IM_MVTO_RETE NUMERIC (16,4) NULL DEFAULT ((0)),                        
 ST_IMPR_RETE VARCHAR(1) NOT NULL DEFAULT ('N'),                        
 PO_DIST NUMERIC (9,4) NOT NULL DEFAULT ((1000)),                        
 ST_CANC_DOCU VARCHAR(1) NULL DEFAULT ('N'),                        
 ST_DIFE_MAYO VARCHAR(1) NULL DEFAULT ('N'),                        
 ST_DIFE_CAMB VARCHAR(1) NULL DEFAULT ('N'),                        
 CO_USUA_CREA VARCHAR(20) NOT NULL,                        
 FE_USUA_CREA DATETIME NOT NULL,                        
 CO_USUA_MODI VARCHAR(20) NOT NULL,                        
 FE_USUA_MODI DATETIME NOT NULL,                        
 NU_CONT INT NOT NULL)                        
                        
CREATE TABLE #TTINTE_TESO                                  
 (NU_SECU        INT           NULL,  NU_QUIE_REPO   INT           NULL, FE_ASTO_CNTB   DATETIME      NULL,                                   
  FE_DOCU_CNTB   DATETIME      NULL,  CO_CNTA_EMPR   VARCHAR(10)   NULL, DE_CNTA_EMPR   VARCHAR(50)   NULL,                                  
  TI_AUXI_EMPR   VARCHAR(1)    NULL,  CO_AUXI_EMPR   VARCHAR(20)   NULL, NO_AUXI        VARCHAR(100)  NULL,                                  
  TI_DOCU        VARCHAR(03)   NULL,  NU_DOCU        VARCHAR(20)   NULL, TI_DOCU_GUIN   VARCHAR(03)   NULL,                                     
  NU_DOCU_GUIN   VARCHAR(20)   NULL,  CO_MONE        VARCHAR(03)   NULL, FA_CAMB_DIAR   NUMERIC(9,4)  NULL,                                   
  TI_OPER        VARCHAR(3)    NULL,  IM_MVTO_ORIG   NUMERIC(16,4) NULL, IM_MVTO_CNTB   NUMERIC(16,4) NULL,                                    
  DE_GLOS        VARCHAR(100)  NULL,  CO_ORDE_SERV   VARCHAR(20)   NULL, NU_CORR_COMP   VARCHAR(10)   NULL,                                  
  CO_AUXI_DETA   VARCHAR(20)   NULL,  NO_AUXI_DETA   VARCHAR(100)  NULL)                             
                        
--Obtengo el Codigo de la Moneda                        
SELECT                         
  @VSCO_MONE_DEFA = CO_MONE_DEFA,                        
  @VSCO_MONE_EXTR = CO_MONE_EXTR,          
  @VSTI_CAMB      = TI_CAMB,          
  @VSTI_ORIG      = TI_ORIG          
                      
FROM TMPARA_TESO                        
WHERE CO_EMPR=@ISCO_EMPR                
                      
SELECT @VSCO_TIPO_OPER = CO_TIPO_OPER    
FROM TTAMAR_DOCO                      
WHERE CO_EMPR = @ISCO_EMPR                      
AND  CO_UNID_CONC = @ISPA_0001                      
AND  NU_ASTO = @ISNU_ASTO                      
AND  FE_ANUL = @IDPA_FECH                      
    
             
                    
--Obtengo el tipo de Operacion contable                        
SELECT DISTINCT @VSCO_OPRC_CNTB = CO_OPRC_CNTB FROM TDTIPO_OPER WHERE CO_TIPO_OPER = @VSCO_TIPO_OPER                        
                      
                       
--Seteo el Tipo de cambio                        
--SELECT @VSTI_CAMB = 'PAC'                        
SELECT @VSSI_MVTO_CNTB = 'APR'                        
                        
--Obtenemos los registros de las facturas a pagarse de la cuenta de la 42XXX       
    
--Obtene_OPER = @VSCO_TIPO_OPER mos los registros de las facturas a pagar CPA                        
INSERT INTO #TXMVTO_CNTB(                        
CO_EMPR ,NU_CNTB_EMPR,CO_UNID_CNTB,CO_OPRC_CNTB,                        
NU_ANNO,NU_MESE,NU_ASTO,NU_SECU,FE_ASTO_CNTB,CO_CNTA_EMPR,TI_AUXI_EMPR,CO_AUXI_EMPR,                        
TI_DOCU,NU_DOCU,FE_DOCU,FE_DOCU_VENC,TI_CAMB,CO_MONE,FA_CAMB ,                        
FA_CAMB_DIAR,TI_OPER,IM_MVTO_ORIG,IM_MVTO_CNTB,DE_GLOS,SI_MVTO_CNTB,ST_IMPR_CHEQ,                        
ST_GEST,ST_REDO,CO_TIPO_OPER,ST_IMPR_RETE,                        
PO_DIST,ST_CANC_DOCU,ST_DIFE_MAYO,ST_DIFE_CAMB,CO_USUA_CREA,FE_USUA_CREA,CO_USUA_MODI,FE_USUA_MODI, NU_CONT      
)                        
                        
 SELECT                         
 T1.CO_EMPR, 1,     T1.CO_UNID_CONC,       @VSCO_OPRC_CNTB,      MAX(YEAR(T0.FE_ANUL)),                        
 MAX(MONTH(T0.FE_ANUL)),  '00000'+RIGHT(@ISNU_ASTO,5),1 'NU_SECU',    MAX(T0.FE_ANUL),        MAX(T4.CO_CNTA_EMPR),                         
 CASE WHEN MAX(ISNULL(T5.TI_AUXI_EMPR,'X')) = 'S' THEN MAX(T2.TI_AUXI_DOCU) ELSE NULL END 'TIPO AUXILIAR',                     
 CASE WHEN MAX(ISNULL(T5.TI_AUXI_EMPR,'X')) = 'S' THEN MAX(T2.CO_CLIE) ELSE  NULL END 'CLIENTE',                         
 CASE WHEN ISNULL(MAX(T5.ST_DOCU_CNTB),'X') = 'S' THEN MAX(T2.CO_TIPO_DOCU) ELSE NULL END 'TIPO DOCUMENTO',                        
 CASE WHEN ISNULL(MAX(T5.ST_DOCU_CNTB),'X') = 'S' THEN MAX(T2.NU_DOCU) ELSE NULL END 'NRO DOCUMENTO',                        
 MAX(T1.FE_EMIS),    MAX(T1.FE_VENC),   'PAC',       MAX(T4.CO_MONE),                  
 CASE WHEN MAX(T4.CO_MONE)= @VSCO_MONE_DEFA THEN 1 ELSE           
 (CASE WHEN MAX(T4.CO_MONE)= @VSCO_MONE_EXTR THEN  MAX(T1.FA_TIPO_CAMB) ELSE MAX(T1.FA_CAMB_EXTR) END) END,         
                        
 CASE WHEN MAX(T4.CO_MONE) != @VSCO_MONE_DEFA AND MAX(T4.CO_MONE) != @VSCO_MONE_EXTR THEN MAX(T1.FA_CAMB_EXTR) ELSE MAX(T1.FA_TIPO_CAMB) END ,            
 MAX(T3.TI_MOVI),   MAX(T1.IM_TOTA), CASE WHEN MAX(T4.CO_MONE) != @VSCO_MONE_DEFA THEN dbo.FN_TCFACT_CAMB_Q05(MAX(T4.CO_MONE), @VSCO_MONE_DEFA,                        
 MAX(T0.FE_ANUL), MAX(T1.IM_TOTA), @VSTI_CAMB, @VSTI_ORIG, 'N', @VSCO_MONE_DEFA, @VSCO_MONE_EXTR, MAX(T1.FA_TIPO_CAMB)) ELSE MAX(T1.IM_TOTA) END,                        
 'CANCELACION DE DOCUMENTOS NOTA CONTABLE ',@VSSI_MVTO_CNTB, 'N','N','N',@VSCO_TIPO_OPER,                        
 'N',1 ,'N','N','N',@ISCO_USUA_MODI ,GETDATE(),@ISCO_USUA_MODI, GETDATE(),1                      
 FROM TTAMAR_DOCO T0, TCDOCU_COBR T1, TDDOCU_COBR T2, TDTIPO_OPER T3, TMCAJA T4, TMPLAN_EMPR T5                      
 WHERE                         
  T1.CO_EMPR = @ISCO_EMPR                        
 AND T0.CO_UNID_CONC = @ISPA_0001                    
 AND T0.NU_ASTO = @ISNU_ASTO                             
 AND T0.FE_ANUL = @IDPA_FECH                         
 AND T0.CO_TIPO_OPER = @VSCO_TIPO_OPER                                           
 AND T3.NU_CORR = 1                     
 AND T1.CO_EMPR = T2.CO_EMPR                        
 AND T1.CO_UNID_CONC = T2.CO_UNID_CONC             
 AND T1.NU_AMAR = T2.NU_AMAR                         
 AND T1.FE_AMAR = T2.FE_AMAR                        
 AND T1.CO_EMPR = T0.CO_EMPR      
 AND T1.CO_UNID_CONC = T0.CO_UNID_CONC      
 AND T1.NU_AMAR = T0.NU_AMAR      
 AND T1.FE_AMAR = T0.FE_AMAR      
 AND T1.CO_EMPR = T3.CO_EMPR                       
 AND T1.CO_TIPO_OPER = T3.CO_TIPO_OPER                        
 AND T1.CO_EMPR = T4.CO_EMPR                       
 And T1.CO_CAJA = T4.CO_CAJA                      
 AND T4.CO_EMPR = T5.CO_EMPR                       
 And T4.CO_CNTA_EMPR = T5.CO_CNTA_EMPR                      
GROUP BY T1.CO_EMPR, T1.FE_AMAR, T1.NU_AMAR, T1.CO_UNID_CONC            
                        
                  
       
                    
INSERT INTO #TXMVTO_CNTB(                        
CO_EMPR ,NU_CNTB_EMPR,CO_UNID_CNTB,CO_OPRC_CNTB,                        
NU_ANNO,NU_MESE,NU_ASTO,NU_SECU,FE_ASTO_CNTB,CO_CNTA_EMPR,TI_AUXI_EMPR,CO_AUXI_EMPR,                        
TI_DOCU,NU_DOCU,FE_DOCU,FE_DOCU_VENC,TI_CAMB,CO_MONE,FA_CAMB,                        
FA_CAMB_DIAR,TI_OPER,IM_MVTO_ORIG,IM_MVTO_CNTB,DE_GLOS,SI_MVTO_CNTB,ST_IMPR_CHEQ,                        
ST_GEST,ST_REDO,CO_TIPO_OPER,ST_IMPR_RETE,                        
PO_DIST,ST_CANC_DOCU,ST_DIFE_MAYO,ST_DIFE_CAMB,CO_USUA_CREA,FE_USUA_CREA,CO_USUA_MODI,FE_USUA_MODI,                        
NU_CONT)                        
                  
SELECT                         
 T1.CO_EMPR,  1, T1.CO_UNID_CONC , @VSCO_OPRC_CNTB,  YEAR(T0.FE_ANUL),                        
 MONTH(T0.FE_ANUL), '00000'+RIGHT(@ISNU_ASTO,5), 2 'NU_SECU',  T0.FE_ANUL,       T3.CO_CNTA_EMPR,                         
 T1.TI_AUXI,    T1.CO_CLIE,    T1.CO_TIPO_DOCU,     T1.NU_DOCU,       T1.FE_EMIS,                        
 T1.FE_VENC,   'PAC', T1.CO_MONE,                 
 CASE WHEN T4.CO_MONE= @VSCO_MONE_DEFA THEN 1 ELSE           
 (CASE WHEN T4.CO_MONE= @VSCO_MONE_EXTR THEN  T1.FA_TIPO_CAMB ELSE T1.FA_CAMB_EXTR END) END,            
CASE WHEN T4.CO_MONE != @VSCO_MONE_DEFA AND T4.CO_MONE != @VSCO_MONE_EXTR THEN T1.FA_CAMB_EXTR ELSE T1.FA_TIPO_CAMB END,                         
 T3.TI_MOVI,    T1.IM_TOTA 'IM_MVTO_ORIG',                   
 CASE WHEN T1.CO_MONE != @VSCO_MONE_DEFA THEN dbo.FN_TCFACT_CAMB_Q05(T1.CO_MONE, @VSCO_MONE_DEFA ,                  
 T0.FE_ANUL, T1.IM_TOTA, @VSTI_CAMB, @VSTI_ORIG, 'N', @VSCO_MONE_DEFA, @VSCO_MONE_EXTR,T1.FA_TIPO_CAMB) ELSE T1.IM_TOTA END 'IM_MVTO_CNTB', 'CANCELACION DE DOCUMENTOS NOTA CONTABLE ',    @VSSI_MVTO_CNTB,                 
 'N',     'N',        'N',  @VSCO_TIPO_OPER,                      
 'N',       1 ,      'N',        'N',        'N',@ISCO_USUA_MODI ,GETDATE(),@ISCO_USUA_MODI, GETDATE(), 2                
 FROM TTAMAR_DOCO T0 INNER JOIN TCDOCU_COBR T1 ON      
T1.CO_EMPR = T0.CO_EMPR      
 AND T1.CO_UNID_CONC = T0.CO_UNID_CONC      
 AND T1.NU_AMAR = T0.NU_AMAR      
 AND T1.FE_AMAR = T0.FE_AMAR      
INNER JOIN TMCAJA T4 ON                
 T4.CO_EMPR = T1.CO_EMPR                
 AND T4.CO_CAJA = T1.CO_CAJA                                
 INNER JOIN TDTIPO_OPER T3 ON                         
  T3.CO_EMPR  = T1.CO_EMPR                         
 AND T3.CO_TIPO_OPER = T1.CO_TIPO_OPER                        
 AND T3.CO_MONE  = T1.CO_MONE                
 WHERE T0.CO_EMPR = @ISCO_EMPR                        
 AND T0.CO_UNID_CONC  = @ISPA_0001                     
 AND T0.NU_ASTO  = @ISNU_ASTO                             
 AND T0.FE_ANUL  = @IDPA_FECH                          
 AND T0.CO_TIPO_OPER = @VSCO_TIPO_OPER                                   
                  
     
If @ISST_INTE = 'S'              
Begin        
    
    
  INSERT INTO TTINTE_CNDE (CO_EMPR, NU_CNTB_EMPR, CO_UNID_CNTB, CO_OPRC_CNTB, NU_ANNO,         
NU_MESE, NU_ASTO, NU_SECU, FE_ASTO_CNTB, CO_CNTA_EMPR, TI_AUXI_EMPR, CO_AUXI_EMPR,          
TI_DOCU, NU_DOCU, FE_DOCU, FE_DOCU_VENC, TI_CAMB, CO_MONE, FA_CAMB, FA_CAMB_DIAR,        
TI_OPER, IM_MVTO_ORIG, IM_MVTO_CNTB, DE_GLOS, TI_DOCU_REFE, NU_DOCU_REFE, NO_GIRA, CO_ORDE_SERV,        
SI_MVTO_CNTB,          
CO_UNID_ORIG, CO_OPRC_ORIG, NU_ASTO_ORIG, ST_OTRS,          
CO_USUA_CREA, FE_USUA_CREA,CO_USUA_MODI, FE_USUA_MODI, NU_PROC, CO_TABL_ORIG,        
CO_CLAV_TAOR, CO_TIPO_OPER)                        
                        
  SELECT                         
  CO_EMPR ,NU_CNTB_EMPR, CO_UNID_CNTB, CO_OPRC_CNTB, NU_ANNO,    
  NU_MESE, NU_ASTO, NU_CONT, FE_ASTO_CNTB, CO_CNTA_EMPR, TI_AUXI_EMPR, CO_AUXI_EMPR,                        
  TI_DOCU, NU_DOCU, FE_DOCU, FE_DOCU_VENC, 'PAC', CO_MONE, FA_CAMB, FA_CAMB_DIAR,    
  TI_OPER,IM_MVTO_ORIG, IM_MVTO_CNTB, DE_GLOS, NULL, NULL, NULL, NULL,    
  SI_MVTO_CNTB,     
  NULL, NULL, NULL, NULL,    
  CO_USUA_CREA,FE_USUA_CREA,CO_USUA_MODI,FE_USUA_MODI, 1, 20,     
  @ISCO_EMPR + @ISNU_ASTO, @VSCO_TIPO_OPER     
  FROM #TXMVTO_CNTB                        
  ORDER BY NU_CONT          
    
END              
    
      
/*------------------------------------- E X T O R N O          
------------------------------------------------------------------------*/              
    
If @ISST_INTE = 'S'              
Begin            
 Update TTINTE_CNDE            
 Set TI_OPER = Case TI_OPER When 'ABO' Then 'CAR' Else 'ABO' End            
  Where TTINTE_CNDE.CO_EMPR = @ISCO_EMPR                  
  And TTINTE_CNDE.NU_CNTB_EMPR = 1                  
  And TTINTE_CNDE.CO_UNID_CNTB = @ISPA_0001    
  And TTINTE_CNDE.CO_OPRC_CNTB = @VSCO_OPRC_CNTB                  
  And TTINTE_CNDE.NU_ANNO      = @INPA_ANNO -- AÏo de la Anulacion            
  And TTINTE_CNDE.NU_MESE      = @INPA_MESE -- Mes de la Anulacion            
  And TTINTE_CNDE.NU_ASTO      =  '00000'+RIGHT(@ISNU_ASTO,5)                 
End            
ELSE            
Begin            
 Update #TXMVTO_CNTB            
 Set TI_OPER = Case TI_OPER When 'ABO' Then 'CAR' Else 'ABO' End            
                 
End      
    
          
/*---------------------------------------------------------------------------------------------------------------------------         
-*/      
    
 --INSERTAMOS EN LA TXMVTO_CNTB                        
IF @ISST_INTE = 'S'     
BEGIN                        
                        
  INSERT INTO TXMVTO_CNTB (CO_EMPR ,NU_CNTB_EMPR,CO_UNID_CNTB,CO_OPRC_CNTB,                        
  NU_ANNO,NU_MESE,NU_ASTO,NU_SECU,FE_ASTO_CNTB,CO_CNTA_EMPR,TI_AUXI_EMPR,CO_AUXI_EMPR,                        
  TI_DOCU,NU_DOCU,FE_DOCU,FE_DOCU_VENC,TI_CAMB,CO_MONE,FA_CAMB,                        
  FA_CAMB_DIAR,TI_OPER,IM_MVTO_ORIG,IM_MVTO_CNTB,DE_GLOS,SI_MVTO_CNTB,ST_IMPR_CHEQ,                        
  ST_GEST,ST_REDO,CO_TIPO_OPER,ST_IMPR_RETE,                        
  PO_DIST,ST_CANC_DOCU,ST_DIFE_MAYO,ST_DIFE_CAMB,CO_USUA_CREA,FE_USUA_CREA,CO_USUA_MODI,FE_USUA_MODI)                        
                        
  SELECT                         
  T2.CO_EMPR , T2.NU_CNTB_EMPR, T2.CO_UNID_CNTB, T2.CO_OPRC_CNTB,                        
  T2.NU_ANNO, T2.NU_MESE, T2.NU_ASTO, T2.NU_SECU,                        
  T2.FE_ASTO_CNTB, T2.CO_CNTA_EMPR, T1.TI_AUXI_EMPR, T1.CO_AUXI_EMPR,                        
  T1.TI_DOCU, T1.NU_DOCU, T2.FE_DOCU, T2.FE_DOCU_VENC, T2.TI_CAMB, T2.CO_MONE, T2.FA_CAMB,                        
  T2.FA_CAMB_DIAR, T2.TI_OPER, T2.IM_MVTO_ORIG, T2.IM_MVTO_CNTB, T2.DE_GLOS, T1.SI_MVTO_CNTB, T1.ST_IMPR_CHEQ,                        
  T1.ST_GEST, T1.ST_REDO, T1.CO_TIPO_OPER, T1.ST_IMPR_RETE,                        
  T1.PO_DIST, T1.ST_CANC_DOCU, T1.ST_DIFE_MAYO, T1.ST_DIFE_CAMB, T1.CO_USUA_CREA, T1.FE_USUA_CREA, T1.CO_USUA_MODI, T1.FE_USUA_MODI                        
  FROM #TXMVTO_CNTB T1, TTINTE_CNDE T2    
    
 Where T2.CO_EMPR = @ISCO_EMPR       
 And T2.NU_CNTB_EMPR = 1             
 And T2.CO_UNID_CNTB = @ISPA_0001    
 And T2.CO_OPRC_CNTB = @VSCO_OPRC_CNTB    
 And T2.NU_ANNO      = @INPA_ANNO    
 And T2.NU_MESE      = @INPA_MESE    
 And T2.NU_ASTO      = '00000'+RIGHT(@ISNU_ASTO,5)       
 And T1.CO_EMPR =  T2.CO_EMPR     
 And T1.NU_CNTB_EMPR = T2.NU_CNTB_EMPR    
 And T1.CO_UNID_CNTB = T2.CO_UNID_CNTB    
 And T1.CO_OPRC_CNTB = T2.CO_OPRC_CNTB    
 And T1.NU_ANNO      = T2.NU_ANNO         
 And T1.NU_MESE      = T2.NU_MESE         
 And T1.NU_ASTO      = T2.NU_ASTO        
 And T1.NU_SECU      = T2.NU_SECU      
                   
     If @@error <> 0                          
           Begin                          
     Rollback tran                           
    Return                          
     End                          
END     
ELSE                        
            
                
--INSERTAMOS EN LA TEMPORAL                        
 BEGIN                        
  INSERT INTO #TTINTE_TESO (NU_SECU,NU_QUIE_REPO, FE_ASTO_CNTB, FE_DOCU_CNTB, CO_CNTA_EMPR, DE_CNTA_EMPR, TI_DOCU, NU_DOCU,                                  
  CO_MONE, FA_CAMB_DIAR, TI_OPER, IM_MVTO_ORIG,IM_MVTO_CNTB, DE_GLOS,CO_AUXI_EMPR, TI_AUXI_EMPR, CO_ORDE_SERV)                          
                        
  SELECT NU_SECU,1,T1.FE_ASTO_CNTB,T1.FE_DOCU,T1.CO_CNTA_EMPR,T2.DE_CNTA_EMPR,                        
        T1.TI_DOCU,T1.NU_DOCU,T1.CO_MONE,T1.FA_CAMB_DIAR,T1.TI_OPER,T1.IM_MVTO_ORIG,T1.IM_MVTO_CNTB,T1.DE_GLOS,                        
        T1.CO_AUXI_EMPR,T1.TI_AUXI_EMPR,NULL                     
  FROM #TXMVTO_CNTB T1                        
        INNER JOIN TMPLAN_EMPR T2 ON T1.CO_EMPR=T2.CO_EMPR AND T1.CO_CNTA_EMPR=T2.CO_CNTA_EMPR                        
  ORDER BY NU_CONT                        
                        
  If @@error <> 0                          
   Begin                          
   Rollback tran                           
   Return                          
  End                          
  SELECT @VSNO_AUXI = NO_AUXI FROM TMAUXI_EMPR                    
  WHERE CO_EMPR = @ISCO_EMPR                    
  AND  TI_AUXI_EMPR = @VSTI_AUXI                    
  AND  CO_AUXI_EMPR = @VSCO_PROV                    
                    
                        
  SELECT NU_SECU, FE_ASTO_CNTB, CO_CNTA_EMPR, DE_CNTA_EMPR, TI_DOCU, NU_DOCU,                                  
  CO_MONE, FA_CAMB_DIAR, TI_OPER, IM_MVTO_ORIG,IM_MVTO_CNTB, DE_GLOS, TI_AUXI_EMPR, CO_AUXI_EMPR, @VSNO_AUXI, CO_ORDE_SERV, @ISNU_ASTO                    
  FROM #TTINTE_TESO                    
                 
END       
              
/********************************* FIN ***********************************/      
      
    
                                 
END                        
----------------------
GO
